📁 Assets/Scripts/
├── PlayerController.cs
│   ├── Rigidbody2D physics + gravity
│   ├── Input.GetAxisRaw(), horizontal movement
│   ├── Physics2D.OverlapCircle(), ground check
│   ├── Animator, Idle/Run/Jump/Fall states
│   └── OnCollisionEnter2D(), stomp enemies
│
├── CoinController.cs
│   ├── OnTriggerEnter2D(), collect on overlap
│   ├── CompareTag("Player"), verify collector
│   └── Destroy(gameObject), cleanup
│
└── GameManager.cs
    ├── Singleton pattern
    ├── DontDestroyOnLoad(), persist data
    └── SceneManager.LoadScene(), next level

📁 Assets/Scenes/
├── Level1.unity
├── Level2.unity
└── Level3.unity